/**
 * jims
 */
package com.jims.master.modules.doctor.medicalService.dao;

import com.jims.master.common.persistence.CrudDao;
import com.jims.master.common.persistence.annotation.MyBatisDao;
import com.jims.master.modules.base.user.entity.MasterBaseinfo;
import com.jims.master.modules.base.user.entity.MasterDoctorinfo;
import com.jims.master.modules.doctor.medicalService.entity.SDoctorServe;
import com.jims.master.modules.sys.entity.User;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 医生提供的服务表DAO接口
 * @author xueyx
 * @version 2017-05-03
 */
@MyBatisDao
public interface SDoctorServeDao extends CrudDao<SDoctorServe> {

    /**
     * 获取服务
     *
     * @return
     */
    public List<SDoctorServe> findServeOrdered(SDoctorServe sDoctorServe);
    /**
     * 根据系统服务名称查询签约医生
     * @param title
     * @return
     * @author chentao
     */
    public List<SDoctorServe> sDoctorServeList(@Param("title")String title);

    /**
     * 根据医生ID得到签约服务
     * @param-User.id
     * @return
     */
    public List<SDoctorServe> serveListByDoctor(@Param("doctorId")String doctorId);

    /***
     *
     * @param sDoctorServe
     * @return
     */
    public SDoctorServe getByEntity(SDoctorServe sDoctorServe);

    /**
     * @Title:
     * @Description: （获取服务列表）
     * @param
     * @return
     * @author jict
     * @date 2017/12/8
     * @throws
     */
    public List<SDoctorServe> doctorServerList();

    public List<SDoctorServe> doctorList(@Param("area")String area,@Param("titles")String titles,@Param("name")String name,@Param("hospital")String hospital,@Param("depNo")String depNo,@Param("list")List<String> list,@Param("type")String type,@Param("pageNum")int pageNum,@Param("parts")String parts);

    /**
     * 根据服务id获取服务详情
     * @param serverId
     * @return
     */
    public SDoctorServe getServerById(@Param("serverId")String serverId);
    public SDoctorServe getServerByIds(@Param("serverId")String serverId);

    /**
     * 医生停运服务
     * @param serverId
     * @return
     */
    public int stopServer(@Param("serverId")String serverId,@Param("state")String state);

    /**
     * @Title:
     * @Description: （获取服务列表）
     * @param
     * @return
     * @author jict
     * @date 2017/12/8
     * @throws
     */
    public List<SDoctorServe> doctorListByArea(@Param("hospital")String hospital,@Param("depNo")String depNo,@Param("list")List<String> list,@Param("type")String type,@Param("area")String area);

    public List<SDoctorServe> doctorListByAll(@Param("hospital")String hospital,@Param("depNo")String depNo,@Param("list")List<String> list,@Param("type")String type);

    public int setCycle(@Param("serverId")String serverId,@Param("cycle")String cycle,@Param("cost")String cost);
}